// 导入 Vue 和 VueI18n
import Vue from 'vue'
import VueI18n from 'vue-i18n'

// 导入 Element 语言包，其中 en 英文语言包，zh 是中文语言包
import enLocale from 'element-ui/lib/locale/lang/en'
import zhLocale from 'element-ui/lib/locale/lang/zh-CN'

// 导入自定义的语言包
import zhCustom from './zh'
import enCustom from './en'

// Element 用来进行配置多语言的插件
import ElementLocale from 'element-ui/lib/locale'

// 注册 VueI18n 多语言插件
Vue.use(VueI18n)

// 对 VueI18n 插件进行实例化并进行配置
const i18n = new VueI18n({
  locale: 'zh', // 设置默认的地址
  // 设置地区信息，设置对应的地区需要加载的语言包
  messages: {
    zh: {
      ...zhLocale,
      ...zhCustom
    },
    en: {
      ...enLocale,
      ...enCustom
    }
  }
})

// 配置 element 语言转换的关系
// 将 element 提供的配置项转换给 i18n 使用
ElementLocale.i18n((key, value) => i18n.t(key, value))

export default i18n
